package commands

var containers = map[string]bool{
	"ACL":      true,
	"CLIENT":   true,
	"CLUSTER":  true,
	"COMMAND":  true,
	"CONFIG":   true,
	"FUNCTION": true,
	"LATENCY":  true,
	"MEMORY":   true,
	"MODULE":   true,
	"OBJECT":   true,
	"PUBSUB":   true,
	"SCRIPT":   true,
	"SENTINEL": true,
	"SLOWLOG":  true,
	"XGROUP":   true,
	"XINFO":    true,
}
var redisCommands = map[string]redisCommand{
	"ACL-CAT": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-DELUSER": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-DRYRUN": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-GENPASS": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-GETUSER": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-HELP": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-LIST": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-LOAD": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-LOG": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-SAVE": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-SETUSER": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-USERS": {
		"SERVER",
		[]keySpec{},
	},
	"ACL-WHOAMI": {
		"SERVER",
		[]keySpec{},
	},
	"ACL": {
		"SERVER",
		[]keySpec{},
	},
	"BGREWRITEAOF": {
		"SERVER",
		[]keySpec{},
	},
	"BGSAVE": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND-COUNT": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND-DOCS": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND-GETKEYS": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND-GETKEYSANDFLAGS": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND-HELP": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND-INFO": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND-LIST": {
		"SERVER",
		[]keySpec{},
	},
	"COMMAND": {
		"SERVER",
		[]keySpec{},
	},
	"CONFIG-GET": {
		"SERVER",
		[]keySpec{},
	},
	"CONFIG-HELP": {
		"SERVER",
		[]keySpec{},
	},
	"CONFIG-RESETSTAT": {
		"SERVER",
		[]keySpec{},
	},
	"CONFIG-REWRITE": {
		"SERVER",
		[]keySpec{},
	},
	"CONFIG-SET": {
		"SERVER",
		[]keySpec{},
	},
	"CONFIG": {
		"SERVER",
		[]keySpec{},
	},
	"DBSIZE": {
		"SERVER",
		[]keySpec{},
	},
	"DEBUG": {
		"SERVER",
		[]keySpec{},
	},
	"FAILOVER": {
		"SERVER",
		[]keySpec{},
	},
	"FLUSHALL": {
		"SERVER",
		[]keySpec{},
	},
	"FLUSHDB": {
		"SERVER",
		[]keySpec{},
	},
	"INFO": {
		"SERVER",
		[]keySpec{},
	},
	"LASTSAVE": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY-DOCTOR": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY-GRAPH": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY-HELP": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY-HISTOGRAM": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY-HISTORY": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY-LATEST": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY-RESET": {
		"SERVER",
		[]keySpec{},
	},
	"LATENCY": {
		"SERVER",
		[]keySpec{},
	},
	"LOLWUT": {
		"SERVER",
		[]keySpec{},
	},
	"MEMORY-DOCTOR": {
		"SERVER",
		[]keySpec{},
	},
	"MEMORY-HELP": {
		"SERVER",
		[]keySpec{},
	},
	"MEMORY-MALLOC-STATS": {
		"SERVER",
		[]keySpec{},
	},
	"MEMORY-PURGE": {
		"SERVER",
		[]keySpec{},
	},
	"MEMORY-STATS": {
		"SERVER",
		[]keySpec{},
	},
	"MEMORY-USAGE": {
		"SERVER",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"MEMORY": {
		"SERVER",
		[]keySpec{},
	},
	"MODULE-HELP": {
		"SERVER",
		[]keySpec{},
	},
	"MODULE-LIST": {
		"SERVER",
		[]keySpec{},
	},
	"MODULE-LOAD": {
		"SERVER",
		[]keySpec{},
	},
	"MODULE-LOADEX": {
		"SERVER",
		[]keySpec{},
	},
	"MODULE-UNLOAD": {
		"SERVER",
		[]keySpec{},
	},
	"MODULE": {
		"SERVER",
		[]keySpec{},
	},
	"MONITOR": {
		"SERVER",
		[]keySpec{},
	},
	"PSYNC": {
		"SERVER",
		[]keySpec{},
	},
	"REPLCONF": {
		"SERVER",
		[]keySpec{},
	},
	"REPLICAOF": {
		"SERVER",
		[]keySpec{},
	},
	"RESTORE-ASKING": {
		"SERVER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ROLE": {
		"SERVER",
		[]keySpec{},
	},
	"SAVE": {
		"SERVER",
		[]keySpec{},
	},
	"SHUTDOWN": {
		"SERVER",
		[]keySpec{},
	},
	"SLAVEOF": {
		"SERVER",
		[]keySpec{},
	},
	"SLOWLOG-GET": {
		"SERVER",
		[]keySpec{},
	},
	"SLOWLOG-HELP": {
		"SERVER",
		[]keySpec{},
	},
	"SLOWLOG-LEN": {
		"SERVER",
		[]keySpec{},
	},
	"SLOWLOG-RESET": {
		"SERVER",
		[]keySpec{},
	},
	"SLOWLOG": {
		"SERVER",
		[]keySpec{},
	},
	"SWAPDB": {
		"SERVER",
		[]keySpec{},
	},
	"SYNC": {
		"SERVER",
		[]keySpec{},
	},
	"TIME": {
		"SERVER",
		[]keySpec{},
	},
	"APPEND": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"DECR": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"DECRBY": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GET": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GETDEL": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GETEX": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GETRANGE": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GETSET": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"INCR": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"INCRBY": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"INCRBYFLOAT": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LCS": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"MGET": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"MSET": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				2,
				0,
				0,
				0,
				0,
			},
		},
	},
	"MSETNX": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				2,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PSETEX": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SET": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SETEX": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SETNX": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SETRANGE": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"STRLEN": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SUBSTR": {
		"STRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ASKING": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-ADDSLOTS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-ADDSLOTSRANGE": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-BUMPEPOCH": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-COUNT-FAILURE-REPORTS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-COUNTKEYSINSLOT": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-DELSLOTS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-DELSLOTSRANGE": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-FAILOVER": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-FLUSHSLOTS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-FORGET": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-GETKEYSINSLOT": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-HELP": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-INFO": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-KEYSLOT": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-LINKS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-MEET": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-MYID": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-NODES": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-REPLICAS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-REPLICATE": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-RESET": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-SAVECONFIG": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-SET-CONFIG-EPOCH": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-SETSLOT": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-SHARDS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-SLAVES": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER-SLOTS": {
		"CLUSTER",
		[]keySpec{},
	},
	"CLUSTER": {
		"CLUSTER",
		[]keySpec{},
	},
	"READONLY": {
		"CLUSTER",
		[]keySpec{},
	},
	"READWRITE": {
		"CLUSTER",
		[]keySpec{},
	},
	"AUTH": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-CACHING": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-GETNAME": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-GETREDIR": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-HELP": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-ID": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-INFO": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-KILL": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-LIST": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-NO-EVICT": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-PAUSE": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-REPLY": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-SETNAME": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-TRACKING": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-TRACKINGINFO": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-UNBLOCK": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT-UNPAUSE": {
		"CONNECTION",
		[]keySpec{},
	},
	"CLIENT": {
		"CONNECTION",
		[]keySpec{},
	},
	"ECHO": {
		"CONNECTION",
		[]keySpec{},
	},
	"HELLO": {
		"CONNECTION",
		[]keySpec{},
	},
	"PING": {
		"CONNECTION",
		[]keySpec{},
	},
	"QUIT": {
		"CONNECTION",
		[]keySpec{},
	},
	"RESET": {
		"CONNECTION",
		[]keySpec{},
	},
	"SELECT": {
		"CONNECTION",
		[]keySpec{},
	},
	"BITCOUNT": {
		"BITMAP",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BITFIELD": {
		"BITMAP",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BITFIELD_RO": {
		"BITMAP",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BITOP": {
		"BITMAP",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				3,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BITPOS": {
		"BITMAP",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GETBIT": {
		"BITMAP",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SETBIT": {
		"BITMAP",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BLMOVE": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BLMPOP": {
		"LIST",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"BLPOP": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-2,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BRPOP": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-2,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BRPOPLPUSH": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LINDEX": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LINSERT": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LLEN": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LMOVE": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LMPOP": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"LPOP": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LPOS": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LPUSH": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LPUSHX": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LRANGE": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LREM": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LSET": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"LTRIM": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"RPOP": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"RPOPLPUSH": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"RPUSH": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"RPUSHX": {
		"LIST",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BZMPOP": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"BZPOPMAX": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-2,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BZPOPMIN": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-2,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZADD": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZCARD": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZCOUNT": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZDIFF": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"ZDIFFSTORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"ZINCRBY": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZINTER": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"ZINTERCARD": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"ZINTERSTORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"ZLEXCOUNT": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZMPOP": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"ZMSCORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZPOPMAX": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZPOPMIN": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZRANDMEMBER": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZRANGE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZRANGEBYLEX": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZRANGEBYSCORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZRANGESTORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZRANK": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREM": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREMRANGEBYLEX": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREMRANGEBYRANK": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREMRANGEBYSCORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREVRANGE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREVRANGEBYLEX": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREVRANGEBYSCORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZREVRANK": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZSCAN": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZSCORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"ZUNION": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"ZUNIONSTORE": {
		"SORTED_SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"COPY": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"DEL": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"DUMP": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"EXISTS": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"EXPIRE": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"EXPIREAT": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"EXPIRETIME": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"KEYS": {
		"GENERIC",
		[]keySpec{},
	},
	"MOVE": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"OBJECT-ENCODING": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"OBJECT-FREQ": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"OBJECT-HELP": {
		"GENERIC",
		[]keySpec{},
	},
	"OBJECT-IDLETIME": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"OBJECT-REFCOUNT": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"OBJECT": {
		"GENERIC",
		[]keySpec{},
	},
	"PERSIST": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PEXPIRE": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PEXPIREAT": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PEXPIRETIME": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PTTL": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"RANDOMKEY": {
		"GENERIC",
		[]keySpec{},
	},
	"RENAME": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"RENAMENX": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"RESTORE": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SCAN": {
		"GENERIC",
		[]keySpec{},
	},
	"TOUCH": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"TTL": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"TYPE": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"UNLINK": {
		"GENERIC",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"WAIT": {
		"GENERIC",
		[]keySpec{},
	},
	"DISCARD": {
		"TRANSACTIONS",
		[]keySpec{},
	},
	"EXEC": {
		"TRANSACTIONS",
		[]keySpec{},
	},
	"MULTI": {
		"TRANSACTIONS",
		[]keySpec{},
	},
	"UNWATCH": {
		"TRANSACTIONS",
		[]keySpec{},
	},
	"WATCH": {
		"TRANSACTIONS",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"EVAL": {
		"SCRIPTING",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"EVAL_RO": {
		"SCRIPTING",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"EVALSHA": {
		"SCRIPTING",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"EVALSHA_RO": {
		"SCRIPTING",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"FCALL": {
		"SCRIPTING",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"FCALL_RO": {
		"SCRIPTING",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"FUNCTION-DELETE": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-DUMP": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-FLUSH": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-HELP": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-KILL": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-LIST": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-LOAD": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-RESTORE": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION-STATS": {
		"SCRIPTING",
		[]keySpec{},
	},
	"FUNCTION": {
		"SCRIPTING",
		[]keySpec{},
	},
	"SCRIPT-DEBUG": {
		"SCRIPTING",
		[]keySpec{},
	},
	"SCRIPT-EXISTS": {
		"SCRIPTING",
		[]keySpec{},
	},
	"SCRIPT-FLUSH": {
		"SCRIPTING",
		[]keySpec{},
	},
	"SCRIPT-HELP": {
		"SCRIPTING",
		[]keySpec{},
	},
	"SCRIPT-KILL": {
		"SCRIPTING",
		[]keySpec{},
	},
	"SCRIPT-LOAD": {
		"SCRIPTING",
		[]keySpec{},
	},
	"SCRIPT": {
		"SCRIPTING",
		[]keySpec{},
	},
	"EXHSET": {
		"TAIRHASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"EXSET": {
		"TAIRSTRING",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"EXZADD": {
		"TAIRZSET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEOADD": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEODIST": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEOHASH": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEOPOS": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEORADIUS": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"keyword",
				0,
				"STORE",
				6,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"keyword",
				0,
				"STOREDIST",
				6,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEORADIUS_RO": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEORADIUSBYMEMBER": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"keyword",
				0,
				"STORE",
				5,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"keyword",
				0,
				"STOREDIST",
				5,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEORADIUSBYMEMBER_RO": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEOSEARCH": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"GEOSEARCHSTORE": {
		"GEO",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HDEL": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HEXISTS": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HGET": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HGETALL": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HINCRBY": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HINCRBYFLOAT": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HKEYS": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HLEN": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HMGET": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HMSET": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HRANDFIELD": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HSCAN": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HSET": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HSETNX": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HSTRLEN": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"HVALS": {
		"HASH",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PFADD": {
		"HYPERLOGLOG",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PFCOUNT": {
		"HYPERLOGLOG",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PFDEBUG": {
		"HYPERLOGLOG",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PFMERGE": {
		"HYPERLOGLOG",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"PFSELFTEST": {
		"HYPERLOGLOG",
		[]keySpec{},
	},
	"PSUBSCRIBE": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBLISH": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBSUB-CHANNELS": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBSUB-HELP": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBSUB-NUMPAT": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBSUB-NUMSUB": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBSUB-SHARDCHANNELS": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBSUB-SHARDNUMSUB": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUBSUB": {
		"PUBSUB",
		[]keySpec{},
	},
	"PUNSUBSCRIBE": {
		"PUBSUB",
		[]keySpec{},
	},
	"SPUBLISH": {
		"PUBSUB",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SSUBSCRIBE": {
		"PUBSUB",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SUBSCRIBE": {
		"PUBSUB",
		[]keySpec{},
	},
	"SUNSUBSCRIBE": {
		"PUBSUB",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"UNSUBSCRIBE": {
		"PUBSUB",
		[]keySpec{},
	},
	"SADD": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SCARD": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SDIFF": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SDIFFSTORE": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SINTER": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SINTERCARD": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"keynum",
				0,
				0,
				0,
				0,
				1,
				1,
			},
		},
	},
	"SINTERSTORE": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SISMEMBER": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SMEMBERS": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SMISMEMBER": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SMOVE": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SPOP": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SRANDMEMBER": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SREM": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SSCAN": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SUNION": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SUNIONSTORE": {
		"SET",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
			{
				"index",
				2,
				"",
				0,
				"range",
				-1,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"SENTINEL-CKQUORUM": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-CONFIG": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-DEBUG": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-FAILOVER": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-FLUSHCONFIG": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-GET-MASTER-ADDR-BY-NAME": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-HELP": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-INFO-CACHE": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-IS-MASTER-DOWN-BY-ADDR": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-MASTER": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-MASTERS": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-MONITOR": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-MYID": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-PENDING-SCRIPTS": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-REMOVE": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-REPLICAS": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-RESET": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-SENTINELS": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-SET": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-SIMULATE-FAILURE": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL-SLAVES": {
		"SENTINEL",
		[]keySpec{},
	},
	"SENTINEL": {
		"SENTINEL",
		[]keySpec{},
	},
	"XACK": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XADD": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XAUTOCLAIM": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XCLAIM": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XDEL": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XGROUP-CREATE": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XGROUP-CREATECONSUMER": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XGROUP-DELCONSUMER": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XGROUP-DESTROY": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XGROUP-HELP": {
		"STREAM",
		[]keySpec{},
	},
	"XGROUP-SETID": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XGROUP": {
		"STREAM",
		[]keySpec{},
	},
	"XINFO-CONSUMERS": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XINFO-GROUPS": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XINFO-HELP": {
		"STREAM",
		[]keySpec{},
	},
	"XINFO-STREAM": {
		"STREAM",
		[]keySpec{
			{
				"index",
				2,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XINFO": {
		"STREAM",
		[]keySpec{},
	},
	"XLEN": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XPENDING": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XRANGE": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XREAD": {
		"STREAM",
		[]keySpec{
			{
				"keyword",
				0,
				"STREAMS",
				1,
				"range",
				-1,
				1,
				2,
				0,
				0,
				0,
			},
		},
	},
	"XREADGROUP": {
		"STREAM",
		[]keySpec{
			{
				"keyword",
				0,
				"STREAMS",
				4,
				"range",
				-1,
				1,
				2,
				0,
				0,
				0,
			},
		},
	},
	"XREVRANGE": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XSETID": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"XTRIM": {
		"STREAM",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},

	"BF.ADD": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.CARD": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.EXISTS": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.INFO": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.INSERT": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.LOADCHUNK": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.MADD": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.MEXISTS": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.RESERVE": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
	"BF.SCANDUMP": {
		"BLOOM FILTER",
		[]keySpec{
			{
				"index",
				1,
				"",
				0,
				"range",
				0,
				1,
				0,
				0,
				0,
				0,
			},
		},
	},
}
